﻿       class-id. AboutWindow as "Barbarian.AboutWindow" is partial 
	             inherits type "System.Windows.Window".			
				 
       environment division.
       configuration section.
       repository.
           class Resources         as "Barbarian.Properties.Resources"
           class IntPtr            as "System.IntPtr"
           class Bitmap            as "System.Drawing.Bitmap"
           class Assembly          as "System.Reflection.Assembly"
           class Int32Rect         as "System.Windows.Int32Rect"
           class Imaging           as "System.Windows.Interop.Imaging"
           class Brushes           as "System.Windows.Media.Brushes"
           class BitmapSizeOptions as "System.Windows.Media.Imaging.BitmapSizeOptions"
           .      
       object.
       working-storage section.
       procedure division.
       
       method-id. NEW.
       working-storage section.
       01 logo type "System.Drawing.Bitmap" value Resources::"BarbarianLogo".
       01 version string value Assembly::"GetExecutingAssembly"()::"GetName"()::"Version".
*       01 iconStream type "System.IO.MemoryStream" value new type "System.IO.MemoryStream".
       procedure division.

           invoke self "InitializeComponent"

           set self::"image1"::"Source" to Imaging::"CreateBitmapSourceFromHBitmap"(
                logo::"GetHbitmap"(), IntPtr::"Zero", Int32Rect::"Empty",
                BitmapSizeOptions::"FromEmptyOptions"())

*           invoke icon::"Save"(iconStream)
*           invoke iconStream::"Seek"(0, type "System.IO.SeekOrigin"::"Begin")
*           set self::"Icon" to type "System.Windows.Media.Imaging.BitmapFrame"::"Create"(iconStream)
           
           set self::"labelVersion"::"Content" to string::"Concat"("Version ", version)

       end method NEW.

       method-id.  "labelIzzy_MouseUp" final private.
       procedure division using by value sender as object e as type "System.Windows.Input.MouseButtonEventArgs".

           invoke type "System.Diagnostics.Process"::"Start"("http://www.flickr.com/photos/izzystewart/436179388/")
           set self::"labelIzzy"::"Foreground" to Brushes::"Purple"

       end method "labelIzzy_MouseUp".

       method-id.  "labelUrl_MouseUp" final private.
       procedure division using by value sender as object e as type "System.Windows.Input.MouseButtonEventArgs".

           invoke type "System.Diagnostics.Process"::"Start"("http://www.codeplex.com/barbarian")
           set self::"labelUrl"::"Foreground" to Brushes::"Purple"

       end method "labelUrl_MouseUp".
      
       end object.
       end class AboutWindow.

